package vip.xiaonuo.biz.modular.lancerCategory.service;

import cn.hutool.core.lang.tree.Tree;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import vip.xiaonuo.biz.modular.pojo.domain.BizCategory;
import com.baomidou.mybatisplus.extension.service.IService;
import vip.xiaonuo.biz.modular.pojo.dto.add.CategoryAddDTO;
import vip.xiaonuo.biz.modular.pojo.dto.common.CommonDeleteDTO;
import vip.xiaonuo.biz.modular.pojo.dto.common.CommonDetailDTO;
import vip.xiaonuo.biz.modular.pojo.dto.edit.CategoryEditDTO;
import vip.xiaonuo.biz.modular.pojo.dto.page.CategoryPageDTO;

import java.util.List;

/**
* @author LancerAdmin
* @description 针对表【biz_category(分类信息)】的数据库操作Service
* @createDate 2024-02-29 14:54:24
*/
public interface BizCategoryService extends IService<BizCategory> {
    List<BizCategory> getAllCategoryList();

    List<Tree<String>> tree();

    Page<BizCategory> pageLAdmin(CategoryPageDTO dto);

    BizCategory detail(CommonDetailDTO dto);

    void add(CategoryAddDTO dto);

    void delete(List<CommonDeleteDTO> dto);

    List<String> getIdListByParentId(String parentId);

    List<BizCategory> getChildListById(List<BizCategory> originDataList, String id, boolean includeSelf);

    BizCategory getById(List<BizCategory> originDataList, String id);

    void edit(CategoryEditDTO dto);

    List<Tree<String>> treeClient();
}
